Communication device , communication method, recording medium and program

ABSTRACT

The present invention relates to a telecommunications apparatus and a method, a storage medium, and a program for determining whether or not the other side communicating content data is located on a LAN or across a WAN. In step S 13 , the difference between a counter value in a received check packet and a value in a register is computed. In step S 14 , the resultant difference is checked to determine if it is equal to a constant value X. If it is determined that the difference is equal to the constant value X, the counter value in the packet is stored in the register in step S 15 . In step S 16 , it is determined whether or not all the predetermined number of check packets is received. If all the predetermined number of check packets is received, it is determined that the communication takes place over a LAN connection in step S 17 . If, in step S 14 , it is determined that the difference is not equal to the constant value X, it is determined that the communication takes place across a WAN connection in step S 18 . The present invention can be applied to a personal computer on a wireless LAN.

TECHNICAL FIELD

The present invention relates to a telecommunications apparatus and amethod, a storage medium, and a program and, in particular, to atelecommunications apparatus and a method, a storage medium, and aprogram suitable for determining whether data communication takes placeacross a WAN such as the Internet or on a LAN in a house.

BACKGROUND ART

In recent years, with the widespread use of public wide area networkssuch as the Internet (hereinafter referred to as “WAN”) and local areanetworks installed in houses (hereinafter referred to as “LAN”) andalong with the increased communication rate of these networks, a varietyof data have been communicated by using personal computers and varioustypes of electronic AV devices over these WANs and LANs.

This widespread use of these networks enables content data, such asvideo data, audio data, and program data, to be conveniently sold orshared by individuals. However, content data which is protected bycopyright is sometimes illegally distributed because of suchconvenience. To prevent this, various types of countermeasures areproposed.

For example, some music download services limit the storage medium thatstores the downloaded audio data to a storage medium havingpredetermined protection against being copied.

Additionally, for example, in communication of content data over a smallnetwork, such as a network based on IEEE 1394 standard, the encryptedcontent data are transferred after authentication to prevent the contentdata from being transferred to an unauthorized device.

Unfortunately, a communication scheme that prevents the illegaldistribution of content data has not yet been established for IPprotocols, which are commonly used for WAN communication. One possiblesolution is to limit the area of communication to a LAN whendistributing the content data over an IP protocol. To limit thecommunication of content data within the LAN, it must be determinedwhether or not the other side communicating the content data is locatedon a LAN or a WAN. A method for such a determination, however, has notyet been established.

DISCLOSURE OF INVENTION

Accordingly, it is an object of the present invention to provide ascheme for determining whether the other side communicating the contentdata is located on a LAN or across a WAN.

A first telecommunications apparatus according to the present inventionincludes transmission means for transmitting a predetermined number ofcheck packets after information indicating the sequence of the checkpackets is recorded in the check packets, receiving means for receivingtransmitted check packets, checking means for checking the sequence ofthe predetermined number of check packets received by the receivingmeans, and determination means for determining, based on the checkingresult of the checking means, whether or not another apparatus forcommunication is located on the same first network as itself or across asecond network different from the first network.

The determination means may determine that another apparatus forcommunication is located on the first network if the checking meansdetermines that the predetermined number of check packets received bythe receiving means is in sequence, or the determination means maydetermine that another apparatus for communication is located across thesecond network if the checking means determines that the predeterminednumber of check packets received by the receiving means is out ofsequence.

The first network may be a local area network (LAN) and the secondnetwork may be a wide area network (WAN).

The communication means and the receiving means may work with a UDPprotocol.

A first telecommunications method according to the present inventionincludes a step of transmitting a predetermined number of check packetsafter information indicating the sequence of the check packets isrecorded in the check packets, a step of receiving transmitted checkpackets, a step of checking the sequence of the predetermined number ofcheck packets received in the receiving step, and a step of determining,based on the checking result in the checking step, whether or notanother apparatus for communication is located on the same first networkas itself or across a second network different from the first network.

A first storage medium according to the present invention includes aprogram including a step of transmitting a predetermined number of checkpackets after information indicating the sequence of the check packetsis recorded in he check packets, a step of receiving transmitted checkpackets, a step of checking the sequence of the predetermined number ofcheck packets received in the receiving step, and a step of determining,based on the checking result in the checking step, whether or notanother apparatus for communication is located on the same first networkas itself or across a second network different from the first network.

A first program according to the present invention allows a computer toexecute a step of transmitting a predetermined number of check packetsafter information indicating the sequence of the check packets isrecorded in the check packets, a step of receiving transmitted checkpackets, a step of checking the sequence of the predetermined number ofcheck packets received in the receiving step, and a step of determining,based on the checking result in the checking step, whether or notanother apparatus for communication is located on the same first networkas itself or across a second network different from the first network.

A second telecommunications apparatus according to the present inventionincludes transmission means for transmitting a predetermined number ofcheck packets, receiving means for receiving transmitted check packets,information generating means for generating acknowledgement informationand sending back the acknowledgement information after receiving thepredetermined number of check packets by the receiving means, acquiringmeans for acquiring the acknowledgement information sent back fromanother apparatus for communication, measuring means for measuring anelapsed time from the transmission of the predetermined number of checkpackets by the transmission means to the reception of theacknowledgement information by the acquiring means, and determinationmeans for determining, based on a measuring result of the measuringmeans, whether or not another apparatus for communication is located onthe same first network as itself or across a second network differentfrom the first network.

The determination means may determine that another apparatus forcommunication is located on the first network if the elapsed timemeasured by the measuring means is smaller than a predeterminedthreshold value or may determine that another apparatus forcommunication is located across the second network if the elapsed timemeasured by the measuring means is greater than or equal to thepredetermined threshold value.

The first network may be a local area network (LAN) and the secondnetwork may be a wide area network (WAN).

The communication means and the receiving means may work with a TCPprotocol or a UDP protocol.

A second telecommunications method according to the present inventionincludes a step of transmitting a predetermined number of check packets,a step of receiving transmitted check packets, a step of generatingacknowledgement information and sending back the acknowledgementinformation after receiving the predetermined number of check packets inthe receiving step, a step of acquiring the acknowledgement informationsent back from another apparatus for communication, a step of measuringan elapsed time from the transmission of the predetermined number ofcheck packets in the transmitting step to the reception of theacknowledgement information in the acquiring step, and a step ofdetermining, based on a measuring result in the measuring step, whetheror not another apparatus for communication is located on the same firstnetwork as itself or across a second network different from the firstnetwork.

A second storage medium includes a program including a step oftransmitting a predetermined number of check packets, a step ofreceiving transmitted check packets, a step of generatingacknowledgement information and sending back the acknowledgementinformation after receiving the predetermined number of check packets inthe receiving step, a step of acquiring the acknowledgement informationsent back from another apparatus for communication, a step of measuringan elapsed time from the transmission of the predetermined number ofcheck packets in the transmitting step to the reception of theacknowledgement information in the acquiring step, and a step ofdetermining, based on a measuring result in the measuring step, whetheror not another apparatus for communication is located on the same firstnetwork as itself or across a second network different from the firstnetwork.

A second program according to the present invention allows a computer toexecute a step of transmitting a predetermined number of check packets,a step of receiving transmitted check packets, a step of generatingacknowledgement information and sending back the acknowledgementinformation after receiving the predetermined number of check packets inthe receiving step, a step of acquiring the acknowledgement informationsent back from another apparatus for communication, a step of measuringan elapsed time from the transmission of the predetermined number ofcheck packets in the transmitting step to the reception of theacknowledgement information in the acquiring step, and a step ofdetermining, based on a measuring result in the measuring step, whetheror not another apparatus for communication is located on the same firstnetwork as itself or across a second network different from the firstnetwork.

A third telecommunications apparatus according to the present inventionincludes transmission means for transmitting a predetermined number ofcheck packets and retransmitting the check packets if a communicationerror occurs, and determination means for determining that anotherapparatus for communication is located on the same first network asitself if the check packets are not retransmitted by the transmissionmeans or determining that another apparatus for communication is locatedacross a second network different from the first network if the checkpackets are retransmitted by the transmission means.

The transmission means may work with a Transmission Control Protocol(TCP).

The first network may be a local area network (LAN) and the secondnetwork may be a wide area network (WAN).

A third telecommunications method according to the present inventionincludes a step of transmitting a predetermined number of check packetsand retransmitting the check packets if a communication error occursand, a step of determining that another apparatus for communication islocated on the same first network as itself if the check packets are notretransmitted in the transmitting step or determining that anotherapparatus for communication is located across a second network differentfrom the first network if the check packets are retransmitted in thetransmitting step.

A third storage medium according to the present invention includes aprogram including a step of transmitting a predetermined number of checkpackets and retransmitting the check packets if a communication erroroccurs, and a step of determining that another apparatus forcommunication is located on the same first network as itself if thecheck packets are not retransmitted in the transmitting step ordetermining that another apparatus for communication is located across asecond network different from the first network if the check packets areretransmitted in the transmitting step.

A third program according to the present invention allows a computer toexecute a step of transmitting a predetermined number of check packetsand retransmitting the check packets if a communication error occurs anda step of determining that another apparatus for communication islocated on the same first network as itself if the check packets are notretransmitted in the transmitting step or determining that anotherapparatus for communication is located across a second network differentfrom the first network if the check packets are retransmitted in thetransmitting step.

In the first telecommunications apparatus, telecommunications method,and program according to the present invention, the check packets inwhich information indicating the sequence of the check packets isrecorded are received. The sequence of a predetermined number of thecheck packets is checked and the result of the check is used todetermine whether another apparatus for communication is located on thesame first network as itself or across a second network different fromthe first network.

In the second telecommunications apparatus, telecommunications method,and program according to the present invention, a predetermined numberof check packets are transmitted to another apparatus for communication,and acknowledgement information sent back from the apparatus isreceived. In addition, an elapsed time from the transmission of thepredetermined number of check packets to the reception of theacknowledgement information is measured. The result of the measurementis used to determine whether the apparatus for communication is locatedon the same first network as itself or across a second network differentfrom the first network.

In the third telecommunications apparatus, telecommunications method,and program according to the present invention, a predetermined numberof check packets are transmitted to another apparatus for communicationand the check packets are retransmitted if a communication error occurs.If the check packets are not retransmitted, it is determined thatanother apparatus for communication is located on the same first networkas itself. If the check packets are retransmitted, it is determined thatanother apparatus for communication is located across a second networkdifferent from the first network.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a configuration of a telecommunicationssystem to which the present invention is applied;

FIG. 2 shows a configuration of a personal computer shown in FIG. 1;

FIG. 3 shows a first configuration of a communication unit 29 shown inFIG. 2;

FIG. 4 shows an example of a check packet;

FIG. 5 is a flow chart explaining a transmission process in the firstconfiguration of the communication unit 29;

FIG. 6 is a flow chart explaining a receiving process in the firstconfiguration of the communication unit 29;

FIG. 7 shows a second configuration of the communication unit 29 shownin FIG. 2;

FIG. 8 is a flow chart explaining a receiving process in the secondconfiguration of the communication unit 29;

FIG. 9 is a flow chart explaining a transmission process in the secondconfiguration of the communication unit 29; and

FIG. 10 is a flow chart explaining a transmission process over a TCPprotocol.

BEST MODE FOR CARRYING OUT THE INVENTION

FIG. 1 shows a configuration of a telecommunications system including aLAN having personal computers and AV devices according to an embodimentof the present invention. In this telecommunication system, LANs 1 and7, and a server 8 are connected to one another across a WAN 6, such asthe Internet.

The LAN 1 includes personal computers (PCs) 3 and 4, and an AV device 5,all connected via a switching hub 2. The LAN 1 is, for example, used forcommunication among specific individuals or a family in a house. Theswitching hub 2 is connected to the personal computers 3 and 4 and theAV device 5 via a high-speed interface, such as Ethernet (R) 100BASE-TX.Data communication can take place among the personal computers 3 and 4and the AV device 5 at a rate of about 100 Mbps with a sufficiently lowerror rate. The personal computers (PCs) 3 and 4 and the AV device 5 cancommunicate with the LAN 7 or the server 8 via the switching hub 2 andthe WAN 6.

The personal computer (PC) 3, upon transmission of content data, candetermine whether or not the other side communicating the content datais located on the LAN 1, for example, the personal computer 4 or islocated across the WAN 6, for example, the server 8.

Likewise, the personal computer 4 and the AV device 5, upon thetransmission of content data, can determine whether the other sidecommunicating the content data is located on the LAN 1, for example, thepersonal computer 3 or is located across the WAN 6, for example, theserver 8.

The LAN 7 has the same configuration as that of the LAN 1, however, itis managed by a different user from the LAN 1. The server 8 is managedby a different user from the LANs 1 and 7.

FIG. 2 shows a configuration of the personal computer 3. The personalcomputer 3 incorporates a central processing unit (CPU) 21, to which anI/O interface 25 is connected via a bus 24. A read only memory (ROM) 22and a random access memory (RAM) 23 are connected to the bus 24.

The I/O interface 25 includes an input unit 26 composed of I/O devices,such as a keyboard and a mouse, by which a user enters operationcommands, an output unit 27 which outputs video signals to displayoperation screens on a display unit, a storage unit 28 which includes ahard disk drive to store programs and other various types of data, and acommunication unit 29 which includes an Ethernet (R) interface totransmit and receive data via a 100BASE-TX cable connected to theswitching hub 2.

Instead of the Ethernet (R) interface, the communication unit 29 mayinclude a universal serial bus (USB), or a high-speed interface, such asan Institute of Electrical and Electronics Engineers (IEEE) 1394.

Additionally, a drive 30 which reads and writes data to and from storagemedia, such as a magnetic disk 31, an optical disk 32, an opticalmagnetic disk 33, and a semiconductor memory 34, is connected to the I/Ointerface 25.

The CPU 21 performs various types of processes, which will be describedbelow, under the control of a program in the ROM 22 or in the RAM 23.The program is read from the magnetic disk 31, the optical disk 32, theoptical magnetic disk 33, or the semiconductor memory 34, is stored inthe storage unit 28, and is then loaded from the storage unit 28 to theRAM 23. The RAM 23 also stores data required for the CPU 21 to performthe various types of processes.

FIG. 3 shows a first configuration of a functional block achieved by thecommunication unit 29 in response to controls of the CPU 21. A controlunit 41 controls a transmitter-receiver unit 43 which transmits andreceives data over the user datagram protocol (UDP), which is one of thecommunication protocols. The control unit 41 accesses a register 42.Before the transmitter-receiver unit 43 transmits content data inresponse to the control of the control unit 41, it transmits apredetermined number of check packets to determine whether the otherside communicating the content data is located on the LAN 1 or acrossthe WAN 6.

FIG. 4 shows an example of the check packet. In particular, this checkpacket has a payload to store a counter value generated by the controlunit 41.

The PC 4 and the AV device 5 have the same hardware or softwarefunctional block as that of the communication unit 29 shown in FIG. 3.In addition, various types of apparatuses on the LAN 7 and the server 8have the same functional block.

An outline of how to determine whether or not the other sidecommunicating the content data is located on the LAN 1 or across the WAN6 will now be described with reference to the first configuration of thecommunication unit 29.

The UDP protocol defines that, in the case of a communication error, apacket that is not transmitted correctly is discarded and is notretransmitted. Using this characteristic, whether or not the other sidecommunicating the content data is located on the LAN 1 or across the WAN6 can be determined.

More specifically, in a high-speed communication with a peer located onthe LAN 1, the switching hub 2 transmits all packets to the peer withoutchanging the sequence of the packets, whereas in a high-speedcommunication with a peer across the WAN 6, a communication error occursdue to a wide area networking and the UDP protocol discards theerroneous packet. Therefore, the peer does not receive some packets orreceives the packets in a different order from the transmission order.This is used to determine whether the other side communicating thecontent data is located on the LAN 1 or across the WAN 6.

A transmission process in the first configuration of the communicationunit 29 shown in FIG. 3 will now be described with reference to the flowchart in FIG. 5. This transmission process determines whether the otherside communicating the content data is located on the LAN 1 or acrossthe WAN 6 before the communication of content data takes place.

In step S1, the control unit 41 assigns an initial value A to a value ina counter therein (counter value). In step S2, the control unit 41increments the counter by a constant value X, then outputs the countervalue to the transmitter-receiver unit 43. In step S3, thetransmitter-receiver unit 43, in response to the control of the controlunit 41, writes the counter value from the control unit 41 into thepayload of a check packet and then transmits it to the other sidecommunicating the content data.

In step S4, the control unit 41 determines whether thetransmitter-receiver unit 43 transmits all the predetermined number ofcheck packets. If all the predetermined number of check packets is notyet transmitted, the process returns to step S2 and the subsequentprocesses are repeated. If, in step S4, the control unit 41 determinesthat all the predetermined number of check packets is transmitted, thetransmission process is completed. As described above, a plurality ofcheck packets having sequential counter values are transmitted to thereceiver.

A receiving process corresponding to the above described transmissionprocess in the first configuration of the communication unit 29 will nowbe described with reference to a flow chart in FIG. 6. In step S11, thecontrol unit 41 stores an initial value A in the register 42. In stepS12, the transmitter-receiver unit 43 waits until the check packettransmitted from a transmitter is received. When thetransmitter-receiver unit 43 receives the check packet, the processproceeds to step S13.

In step S13, the control unit 41 computes the difference between acounter value in a payload of the check packet received in step S12 andthe value in the register 42. In step S14, the resultant differencecomputed in step S13 is checked to determine if it is equal to theconstant value X. If the difference is equal to the constant value X, acheck packet is not lost and the packet is received in the transmissionsequence, and then the process proceeds to step S15.

In step S15, the control unit 41 stores the counter value recorded inthe packet in step S13 in the register 42. In step S16, the control unit41 determines whether the transmitter-receiver unit 43 receives all thepredetermined number of check packets. If all the predetermined numberof check packets is not yet received, the process returns to step S12and the subsequent processes are repeated. Then, if, in step S16, it isdetermined that all the predetermined number of check packets isreceived, the process proceeds to step S17.

In step S17, the control unit 41 determines LAN connection, representingthat the transmitter is located on the LAN 1.

In step S14, if the difference computed in step S13 is not equal to theconstant value X, a check packet is lost or the check packet is receivedin a different sequence from the transmission sequence. Accordingly, theprocess proceeds to step S18. In step S18, the control unit 41determines WAN connection, representing that the transmitter is locatedon the WAN 6. This is the end of the description of the receivingprocess.

For example, if it is determined that the communication takes placeacross a WAN connection in the receiving process, the usage of contentdata subsequently transmitted from the transmitter is strictly limited.In contrast, if it is determined that the communication takes placeacross a LAN connection, the usage of content data subsequentlytransmitted from the transmitter is moderately limited. This preventsthe content data from being distributed across a WAN without impairingpersonal use on a LAN.

FIG. 7 shows a second configuration of a functional block achieved bythe communication unit 29 in response to controls of the CPU 21. Acontrol unit 51 controls a transmitter-receiver unit 53, which transmitsand receives data over the TCP protocol or the UDP protocol. The controlunit 51 also accesses a register 52. Before the transmitter-receiverunit 53 transmits content data in response to the control of the controlunit 51, it transmits a predetermined number of check packets todetermine whether the other side communicating the content data islocated on the LAN 1 or across the WAN 6. A timer 54 measures time inresponse to the control of the control unit 51.

The PC 4 and the AV device 5 have the same hardware or softwarefunctional blocks as those of the communication unit 29 shown in FIG. 7.In addition, various types of apparatuses on the LAN 7 and the server 8have the same functional blocks.

An outline of how to determine whether or not the other sidecommunicating the data is located on the LAN 1 or across the WAN 6 willnow be described with reference to the second configuration of thecommunication unit 29. In a communication on the LAN 1, the switchinghub 2 ensures a high-speed communication rate. In contrast, in acommunication across the WAN 6, the communication rate is decreased dueto various reasons compared to the communication rate on the LAN 1.Based on this, it is determined whether or not the other sidecommunicating the data is located on the LAN 1 or across the WAN 6.

A receiving process in the second configuration of the communicationunit 29 will now be described with reference to the flow chart in FIG.8. This receiving process starts when a transmitter transmits a checkpacket.

In step S21, the control unit 51 determines whether or not thetransmitter-receiver unit 53 receives all the predetermined number ofcheck packets. The control unit 51 waits until it is determined that allthe predetermined number of check packets is received. If it isdetermined that all the predetermined number of check packets isreceived, the process proceeds to step S22. In step S22, the controlunit 51 generates acknowledgement information indicating that all thepredetermined number of check packets is received, and outputs theinformation to the transmitter-receiver unit 53. In step S23, thetransmitter-receiver unit 53 transmits the acknowledgement informationto the transmitter. Preferably, the acknowledgement information cannotbe forged by a third party for security reasons. For example, thetransmitter and the receiver share key information as privilegedinformation. All data or part of the data is transmitted with a hash andthe key information. This is the end of the description of the receivingprocess.

A transmission process in the second configuration of the communicationunit 29 will now be described with reference to the flow chart in FIG.9. In step S31, the control unit 51 sets a waiting time in the timer 54.The waiting time is determined so as to be sufficient to receive theacknowledgement information sent back from a transmitter located on theLAN 1 after transmitting a predetermined number of check packets.

In step S32, the timer 54 starts measuring time in response to thecontrol of the control unit 51. In step S33, the transmitter-receiverunit 53 transmits a predetermined number of check packets in response tothe control of the control unit 51. A random number may be written intopayloads of all check packets for every checking. The receiver generatesthe acknowledgement information with a hash and key information asdescribed above to prevent the acknowledgement information from beingforged improperly.

In step S34, the control unit 51 determines whether or not thetransmitter-receiver unit 53 receives the acknowledgement informationfrom the receiver. If the control unit 51 determines that theacknowledgement information is not received, then the process proceedsto step S35. In step S35, the control unit 51 checks if the waitingtime, which is set in step S31, has elapsed or not. If it is determinedthat it has not elapsed, the process returns to step S34 and then thesubsequent steps are repeated.

If, in step S34, the control unit 51 determines that the acknowledgementinformation is received, the process proceeds to step S36, where thecontrol unit 51 checks if the acknowledgement information is correct ornot. If it is not correct, the process proceeds to step S38. Otherwise,the process proceeds to step S37. In step S37, the control unit 51determines that the communication takes place over a LAN connection,that is, the receiver is located on the LAN 1. In particular, to checkthe acknowledgement information, the transmitter may compute expectedacknowledgement information as in the receiving process to compare witha value from the receiver.

If, in step S35, it is determined that the waiting time has elapsed, theprocess proceeds to step S38. In step S38, the control unit 51determines that the communication takes place across a WAN connection,that is, the receiver is located across the WAN 6. This is the end ofthe description of the transmission process.

For example, if it is determined that the communication takes placeacross a WAN connection in this transmission process, subsequenttransmission of content data is stopped. In contrast, if it isdetermined that the communication takes place on a LAN connection, thesubsequent transmission of content data is allowed. This prevents thecontent data from being distributed across a WAN without impairingpersonal use on a LAN.

A third communication via a Transmission Control protocol (TCP) in thecommunication unit 29 will now be described. In the TCP protocol, when acommunication error occurs, an erroneous packet is retransmitted untilall the packets are transmitted successfully. If a high-speed TCPcommunication that exceeds the speed of a WAN takes place,retransmissions do not occur on the LAN 1, however, retransmissionsoccur across the WAN 6.

A transmission process to determine whether or not the receiver islocated on the LAN 1 or across the WAN 6 by using this characteristic ofthe TCP protocol will now be described with reference to the flow chartin FIG. 10. This transmission process is performed before thecommunication of content data. In this case, the configuration of thecommunication unit 29 is identical to that in FIG. 3.

In step S41, the transmitter-receiver unit 43 starts to transmit checkpackets in response to the control of the control unit 41. In step S42,the control unit 41 determines whether or not the transmitter-receiverunit 43 retransmits the check packets. If it is determined thatretransmission of the check packets occurs, the process proceeds to stepS43.

In step S43, the control unit 41 determines WAN connection, representingthat the receiver is located on the WAN 6.

If, in step S42, it is determined that retransmission of the checkpackets does not occur, the process proceeds to step S44. In step S44,the control unit 41 determines whether or not the transmitter-receiverunit 43 transmits a predetermined number of check packets. If it isdetermined that the predetermined number of check packets is nottransmitted, the process returns to step S42 and then the subsequentprocess is repeated. Subsequently, if, in step S44, it is determinedthat the predetermined number of check packets is transmitted, theprocess proceeds to step S45.

In step S45, the control unit 41 determines LAN connection, representingthat the receiver is located on the LAN 1. This is the end of thedescription of the transmission process.

For example, if it is determined that the communication takes placeacross a WAN connection in this transmission process, subsequenttransmission of content data is stopped. In contrast, if it isdetermined that the communication takes place across a LAN connection,the subsequent transmission of content data is allowed. This can preventthe content data from being distributed across a WAN without impairingpersonal use on a LAN.

In the present specification, the steps that describe the program storedin the storage media include not only processes executed in the abovedescribed sequence, but also processes that may be executed in parallelor independently.

In addition, as used in the specification, “system” refers to a wholedevice including a plurality of devices.

Industrial Applicability

According to the present invention, it can be determined whether or notthe other side communicating content data is located on a LAN or acrossa WAN.

1. A telecommunications apparatus for communicating over a network,comprising: transmission means for transmitting a predetermined numberof check packets after information indicating the sequence of the checkpackets is recorded in the check packets; receiving means for receivingtransmitted check packets; checking means for checking the sequence ofthe predetermined number of check packets received by the receivingmeans; and determination means for determining, based on the checkingresult of the checking means, whether or not another apparatus forcommunication is located on the same first network as itself or across asecond network different from the first network.
 2. Thetelecommunications apparatus according to claim 1, wherein thedetermination means determines that another apparatus for communicationis located on the first network if the checking means determines thatthe predetermined number of check packets received by the receivingmeans is in sequence, or the determination means determines that anotherapparatus for communication is located across the second network if thechecking means determines that the predetermined number of check packetsreceived by the receiving means is out of sequence.
 3. Thetelecommunications apparatus according to claim 1, wherein the firstnetwork is a local area network (LAN) and the second network is a widearea network (WAN).
 4. The telecommunications apparatus according toclaim 1, wherein the communication means and the receiving means workwith a User Datagram Protocol (UDP).
 5. A method for communicating overa network, comprising the steps of: transmitting a predetermined numberof check packets after information indicating the sequence of the checkpackets is recorded in the check packets; receiving transmitted checkpackets; checking the sequence of the predetermined number of checkpackets received in the receiving step; and determining, based on thechecking result in the checking step, whether or not another apparatusfor communication is located on the same first network as itself oracross a second network different from the first network.
 6. A storagemedium for storing a computer-readable program for communicating over anetwork, wherein the computer-readable program comprises the steps of:transmitting a predetermined number of check packets after informationindicating the sequence of the check packets is recorded in the checkpackets; receiving transmitted check packets; checking the sequence ofthe predetermined number of check packets received in the receivingstep; and determining, based on the checking result in the checkingstep, whether or not another apparatus for communication is located onthe same first network as itself or across a second network differentfrom the first network.
 7. A program for communicating over a network,wherein the program allows a computer to execute the steps of:transmitting a predetermined number of check packets after informationindicating the sequence of the check packets is recorded in the checkpackets; receiving transmitted check packets; checking the sequence ofthe predetermined number of check packets received in the receivingstep; and determining, based on the checking result in the checkingstep, whether or not another apparatus for communication is located onthe same first network as itself or across a second network differentfrom the first network.
 8. A telecommunications apparatus forcommunicating over a network, comprising: transmission means fortransmitting a predetermined number of check packets; receiving meansfor receiving transmitted check packets; information generating meansfor generating acknowledgement information and sending back theacknowledgement information after receiving the predetermined number ofcheck packets by the receiving means; acquiring means for acquiring theacknowledgement information sent back from another apparatus forcommunication; measuring means for measuring an elapsed time from thetransmission of the predetermined number of check packets by thetransmission means to the reception of the acknowledgement informationby the acquiring means; and determination means for determining, basedon a measuring result of the measuring means, whether or not anotherapparatus for communication is located on the same first network asitself or across a second network different from the first network. 9.The telecommunications apparatus for communicating over a networkaccording to claim 8, wherein the determination means determines thatanother apparatus for communication is located on the first network ifthe elapsed time measured by the measuring means is smaller than apredetermined threshold value or determines that another apparatus forcommunication is located across the second network if the elapsed timemeasured by the measuring means is greater than or equal to thepredetermined threshold value.
 10. The telecommunications apparatusaccording to claim 8, wherein the first network is a local area network(LAN) and the second network is a wide area network (WAN).
 11. Thetelecommunications apparatus according to claim 8, wherein thecommunication means and the receiving means work with a TransmissionControl Protocol (TCP) or a User Datagram Protocol (UDP).
 12. Atelecommunications method for communicating over a network, comprisingthe steps of: transmitting a predetermined number of check packets;receiving transmitted check packets; generating acknowledgementinformation and sending back the acknowledgement information afterreceiving the predetermined number of check packets in the receivingstep; acquiring the acknowledgement information sent back from anotherapparatus for communication; measuring an elapsed time from thetransmission of the predetermined number of check packets in thetransmitting step to the reception of the acknowledgement information inthe acquiring step; and determining, based on a measuring result in themeasuring step, whether or not another apparatus for communication islocated on the same first network as itself or across a second networkdifferent from the first network.
 13. A storage medium for storing acomputer-readable program for communicating over a network, wherein thecomputer-readable program comprises the steps of: transmitting apredetermined number of check packets; receiving transmitted checkpackets; generating acknowledgement information and sending back theacknowledgement information after receiving the predetermined number ofcheck packets in the receiving step; acquiring the acknowledgementinformation sent back from another apparatus for communication;measuring an elapsed time from the transmission of the predeterminednumber of check packets in the transmitting step to the reception of theacknowledgement information in the acquiring step; and determining,based on a measuring result in the measuring step, whether or notanother apparatus for communication is located on the same first networkas itself or across a second network different from the first network.14. A program for communicating over a network, wherein the programallows a computer to execute the steps of: transmitting a predeterminednumber of check packets; receiving transmitted check packets; generatingacknowledgement information and sending back the acknowledgementinformation after receiving the predetermined number of check packets inthe receiving step; acquiring the acknowledgement information sent backfrom another apparatus for communication; measuring an elapsed time fromthe transmission of the predetermined number of check packets in thetransmitting step to the reception of the acknowledgement information inthe acquiring step; and determining, based on a measuring result in themeasuring step, whether or not another apparatus for communication islocated on the same first network as itself or across a second networkdifferent from the first network.
 15. A telecommunications apparatus forcommunicating over a network, comprising: transmission means fortransmitting a predetermined number of check packets and retransmittingthe check packets if a communication error occurs; and determinationmeans for determining that another apparatus for communication islocated on the same first network as itself if the check packets are notretransmitted by the transmission means or determining that anotherapparatus for communication is located across a second network differentfrom the first network if the check packets are retransmitted by thetransmission means.
 16. The telecommunications apparatus according toclaim 15, wherein the transmission means works with a TransmissionControl Protocol (TCP).
 17. The telecommunications apparatus accordingto claim 15, wherein the first network is a local area network (LAN) andthe second network is a wide area network (WAN).
 18. A method forcommunicating over a network, comprising the steps of: transmitting apredetermined number of check packets and retransmitting the checkpackets if a communication error occurs; and determining that anotherapparatus for communication is located on the same first network asitself if the check packets are not retransmitted in the transmittingstep or determining that another apparatus for communication is locatedacross a second network different from the first network if the checkpackets are retransmitted in the transmitting step.
 19. A storage mediumfor storing a computer-readable program for communicating over anetwork, wherein the computer-readable program comprises the steps of:transmitting a predetermined number of check packets and retransmittingthe check packets if a communication error occurs; and determining thatanother apparatus for communication is located on the same first networkas itself if the check packets are not retransmitted in the transmittingstep or determining that another apparatus for communication is locatedacross a second network different from the first network if the checkpackets are retransmitted in the transmitting step.
 20. A program forcommunicating over a network, wherein the program allows a computer toexecute the steps of: transmitting a predetermined number of checkpackets and retransmitting the check packets if a communication erroroccurs; and determining that another apparatus for communication islocated on the same first network as itself if the check packets are notretransmitted in the transmitting step or determining that anotherapparatus for communication is located across a second network differentfrom the first network if the check packets are retransmitted in thetransmitting step.